import Image, ImageDraw, ImageFont, Geometria, ContSolv, Vectores, Funcoes

def executar(comando, lista):
    try:
        eval(comando[0])
        CountSolv.countsolv(comando)
        resultado = eval(comando)
        imagem = Image.new("RGBA", (300, 350), (0,0,0))
        imagem.putalpha(0)
        letra = ImageFont.load_default()
        desenho = ImageDraw.Draw(imagem)
        desenho.line((150,25,150,150),fill="#000000")
        desenho.line((25,150,275,150),fill="#000000")
        desenho.text((25,300), "Resultado = " + str(resultado), font = letra, fill = (0,0,0))
        for item in lista:
            if item.visivel:
                grafico = item.grafico().chop(25, 25, 275, 275)
                desenho.paste(grafico, (25,25))
        return imagem, lista
        
        
    except NameError:
        imagem = eval(comando)
        if type(imagem) == "<type 'instance'>":
            lista.append(imagem)
            imagem = Image.new("RGBA", (300, 350), (0,0,0))
            imagem.putalpha(0)            
        desenho = ImageDraw.Draw(imagem)
        desenho.line((150,25,150,150),fill="#000000")
        desenho.line((25,150,275,150),fill="#000000")
        for item in lista:
            if item.visivel:
                grafico = item.grafico().chop(25, 25, 275, 275)
                desenho.paste(grafico, (25,25))
        return imagem, lista
